package com.v3admin.system.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.v3admin.common.domain.BaseEntity;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotNull;

/**
 * 系统用户的角色
 *
 * @author Junpeng.Li
 * @date 2023-12-12 17:24
 */
@Getter
@Setter
@ToString
@TableName("system_role")
public class SystemRole extends BaseEntity {

    /**
     * 数据库字段
     */
    public static final String TBF_NAME = "`name`";

    /**
     * 角色ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 角色名
     */
    @NotNull(message = "角色名不能为空")
    @Length(max = 20, message = "角色名只允许输入 1 ~ 20 个字符")
    @TableField(TBF_NAME)
    private String name;

    /**
     * 描述信息
     */
    @Length(max = 200, message = "角色描写最多可输入 200 个字符")
    private String description;

}
